package com.haoting.blogservice.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.haoting.blogservice.entity.Blog;
import com.baomidou.mybatisplus.extension.service.IService;
import com.haoting.blogservice.entity.vo.BlogIndexVo;
import com.haoting.blogservice.entity.vo.BlogInfoVo;
import com.haoting.blogservice.entity.vo.BlogPublishVo;
import com.haoting.blogservice.entity.vo.BlogQuery;
import com.haoting.blogservice.entity.vo.BlogWebVo;
import com.haoting.blogservice.entity.vo.FrontAuthorVo;
import com.haoting.blogservice.entity.vo.FrontBlogQuery;
import com.haoting.blogservice.entity.vo.HotAuhtor;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author tingting
 * @since 2020-12-21
 */
public interface BlogService extends IService<Blog> {

    String saveBlogInfo(BlogInfoVo blogInfoVo);

    BlogPublishVo publishBlogInfo(String id);

    Page<BlogInfoVo> getPageVo(Page<BlogInfoVo> page, BlogQuery blogQuery);

    List<BlogIndexVo> getBlogIndexVo();

    List<BlogIndexVo> gethotblogVo();

    List<HotAuhtor> getHotAuthor();

    Page<BlogIndexVo> getblogFront(Page<BlogIndexVo> page, FrontBlogQuery frontBlogQuery);

    BlogWebVo getFrontBlogInfo(String blogId);

    FrontAuthorVo getAuthorCount(String authorId);

    void addSupportCount(String blogId);


    void collectionUpdate(String blogId);

    void addlook(String blogId);
}
